home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1998 / MacHack 1998.toast / Sessions / Completions / Completions Source / Execution Queues / Deferer.h < prev    next >
Encoding:
Text File  |  1998-06-17  |  682 b   |  42 lines  |  [TEXT/CWIE]

  1. // Deferer.h
  2.  
  3. #ifndef Deferer_h
  4. #define Deferer_h
  5.  
  6. #ifndef Integers_h
  7. #include "Integers.h"
  8. #endif
  9. #ifndef A5_h
  10. #include "A5.h"
  11. #endif
  12. #ifndef DeferredTaskTime_h
  13. #include "DeferredTaskTime.h"
  14. #endif
  15. #ifndef __OSUTILS__
  16. #include <OSUtils.h>
  17. #endif
  18.  
  19. class Deferer
  20.   {
  21.     private:
  22.         DeferredTask block;
  23.         const DeferredTaskTimeProcedure *volatile action;
  24.         A5 a5;
  25.         
  26.         static void Execute( Deferer * );
  27.         static pascal void ExecuteGlue();
  28.         
  29.         // not implemented:
  30.             Deferer( const Deferer& );
  31.             void operator=( const Deferer& );
  32.                 
  33.     public:
  34.         Deferer();
  35.         ~Deferer();
  36.         
  37.         void Defer( const DeferredTaskTimeProcedure& );
  38.         bool Pending() const            { return action != 0; }
  39.   };
  40.  
  41. #endif
  42.